package com.cyou.dream.configuration;

import lombok.Data;

import java.util.Map;

/**
 * 规则配置
 */
@Data
public class RuleConfig {

    /**
     * 规则类型，需与{@link com.cyou.dream.define.ERule}中的枚举值对应
     */
    private String ruleType;

    /**
     * 规则表达式，用于生成Redis中的key
     * <p>
     * 示例：
     * <ul>
     *     <li>ip_limit:${ip}</li>
     *     <li>ip_uri_limit:${ip}${uri}</li>
     * </ul>
     */
    private String keyPattern;

    /**
     * 规则参数，对应{@link com.cyou.dream.define.ERuleParam}中的参数，按需取用或拓展
     */
    private Map<String, Object> ruleParams;

}